/*
* Copyright (C) 1997-2001 Id Software, Inc.
* 
* This program is free software; you can redistribute it and/or modify it under
* the terms of the GNU General Public License as published by the Free Software
* Foundation; either version 2 of the License, or (at your option) any later
* version.
* 
* This program is distributed in the hope that it will be useful, but WITHOUT
* ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS
* FOR A PARTICULAR PURPOSE.
* 
* See the GNU General Public License for more details.
* 
* You should have received a copy of the GNU General Public License along with
* this program; if not, write to the Free Software Foundation, Inc., 59 Temple
* Place - Suite 330, Boston, MA 02111-1307, USA.
*  
*/

// Created on 14.01.2004 by RST.
// $Id: server_static_t.java,v 1.2 2004/09/22 19:22:12 salomo Exp $
using System;
using Defines = Suake2.UI.Defines;
using entity_state_t = Suake2.UI.game.entity_state_t;
using sizebuf_t = Suake2.UI.qcommon.sizebuf_t;
namespace Suake2.UI.server
{
	
	public class server_static_t
	{
		private void  InitBlock()
		{
			challenges = new challenge_t[Defines.MAX_CHALLENGES];
			demo_multicast_buf = new sbyte[Defines.MAX_MSGLEN];
		}
		public server_static_t()
		{
			InitBlock();
			for (int n = 0; n < Defines.MAX_CHALLENGES; n++)
			{
				challenges[n] = new challenge_t();
			}
		}
		
		internal bool initialized; // sv_init has completed
		
		internal int realtime; // always increasing, no clamping, etc
		
		internal System.String mapcmd = ""; // ie: *intro.cin+base
		
		internal int spawncount; // incremented each server start
		
		// used to check late spawns
		
		internal client_t[] clients; // [maxclients->value];
		
		internal int num_client_entities; // maxclients->value*UPDATE_BACKUP*MAX_PACKET_ENTITIES
		
		internal int next_client_entities; // next client_entity to use
		
		internal entity_state_t[] client_entities; // [num_client_entities]
		
		internal int last_heartbeat;
		
		//UPGRADE_NOTE: The initialization of  'challenges' was moved to method 'InitBlock'. "ms-help://MS.VSCC.v80/dv_commoner/local/redirect.htm?index='!DefaultContextWindowIndex'&keyword='jlca1005'"
		internal challenge_t[] challenges; // to
		// prevent
		// invalid
		// IPs
		// from
		// connecting
		
		// serverrecord values
		//UPGRADE_TODO: Class 'java.io.RandomAccessFile' was converted to 'System.IO.FileStream' which has a different behavior. "ms-help://MS.VSCC.v80/dv_commoner/local/redirect.htm?index='!DefaultContextWindowIndex'&keyword='jlca1073_javaioRandomAccessFile'"
		internal System.IO.FileStream demofile;
		
		internal sizebuf_t demo_multicast = new sizebuf_t();
		
		//UPGRADE_NOTE: The initialization of  'demo_multicast_buf' was moved to method 'InitBlock'. "ms-help://MS.VSCC.v80/dv_commoner/local/redirect.htm?index='!DefaultContextWindowIndex'&keyword='jlca1005'"
		internal sbyte[] demo_multicast_buf;
	}
}